package user;

import book.BookList;
import ioperations.IOperation;

/**
 * Created with IntelliJ IDEA.
 * Description:
 * User: 姚东名
 * Date: 2024-06-14
 * Time: 14:40
 */
public abstract class User {
    protected String name;
    //此时这个数组并没有初始化：用接口数组来连接各种操作图书的方法
    public IOperation[] iOperations;

    //此时 这个是为了子类当中的构造方法 初始化 父类的成员
    public User(String name) {
        this.name = name;
    }
    public abstract int menu();

    //利用接口数组 来操作图书系统相关的操作方法
    public void operation(int choice, BookList bookList) {
        //接口数组中的下标代表指向的是一个个（操作图书的方法 [choice].work(bookList)）
        iOperations[choice].work(bookList);
    }
}
